// This example show how to set the validity period of the application instance certificate. using System; using OpcLabs.BaseLib.Security.Cryptography.PkiCertificates; using OpcLabs.EasyOpc.UA; using OpcLabs.EasyOpc.UA.Application; using OpcLabs.EasyOpc.UA.Application.Extensions; using OpcLabs.EasyOpc.UA.OperationModel; namespace UADocExamples._CertificateGenerationParameters { class ValidityPeriodInMonths { public static void Main1() { UAEndpointDescriptor endpointDescriptor = "opc.tcp://opcua.demo-this.com:51210/UA/SampleServer"; // or "http://opcua.demo-this.com:51211/UA/SampleServer" (currently not supported) // or "https://opcua.demo-this.com:51212/UA/SampleServer/" Console.WriteLine("Setting the validity period of the auto-generated instance certificate to 50 years (600 months)..."); EasyUAApplication.Instance.ApplicationParameters.InstanceCertificateGenerationParameters.ValidityPeriodInMonths = 600; Console.WriteLine("Obtaining the application interface..."); var client = new EasyUAClient(); EasyUAApplication application = EasyUAApplication.Instance; try { Console.WriteLine("Removing the current application instance certificate..."); application.RemoveOwnCertificate(mustExist:false); Console.WriteLine("Do something - invoke an OPC read, to trigger auto-generation of a new instance certificate..."); client.ReadValue(endpointDescriptor, "nsu=http://test.org/UA/Data/ ;i=10853"); Console.WriteLine("Finding the current application instance certificate..."); IPkiCertificate instanceCertificate = application.FindOwnCertificate(); if (!(instanceCertificate is null)) Console.WriteLine($"Expiration date: {instanceCertificate.NotAfter}"); } catch (UAException uaException) { Console.WriteLine($"*** Failure: {uaException.GetBaseException().Message}"); } } } }
# This example show how to set the validity period of the application instance certificate. # The QuickOPC package is needed. Install it using "pip install opclabs_quickopc". import opclabs_quickopc # Import .NET namespaces. from OpcLabs.EasyOpc.UA import * from OpcLabs.EasyOpc.UA.Application import * from OpcLabs.EasyOpc.UA.Application.Extensions import * from OpcLabs.EasyOpc.UA.OperationModel import * endpointDescriptor = UAEndpointDescriptor('opc.tcp://opcua.demo-this.com:51210/UA/SampleServer') # or 'http://opcua.demo-this.com:51211/UA/SampleServer' (currently not supported) # or 'https://opcua.demo-this.com:51212/UA/SampleServer/' print('Setting the validity period of the auto-generated instance certificate to 50 years (600 months)...') EasyUAApplication.Instance.ApplicationParameters.InstanceCertificateGenerationParameters.ValidityPeriodInMonths = 600 print('Obtaining the application interface...') client = EasyUAClient() application = EasyUAApplication.Instance try: print('Removing the current application instance certificate...') IEasyUAClientServerApplicationExtension.RemoveOwnCertificate(application, False) # mustExist=False print('Do something - invoke an OPC read, to trigger auto-generation of a new instance certificate...') IEasyUAClientExtension.ReadValue(client, endpointDescriptor, UANodeDescriptor("nsu=http://test.org/UA/Data/ ;i=10853")) print('Finding the current application instance certificate...') instanceCertificate = IEasyUAClientServerApplicationExtension.FindOwnCertificate(application) if instanceCertificate is not None: print('Expiration date: ', instanceCertificate.NotAfter, sep='') except UAException as uaException: print('*** Failure: ' + uaException.GetBaseException().Message) exit() print('Finished.')
Copyright © 2004-2023 CODE Consulting and Development, s.r.o., Plzen. All rights reserved. Web page: www.opclabs.com
Send Documentation Feedback. Resources: Knowledge Base. Technical support: Online Forums, FAQ.